#ifndef THREADPOOL_H
#define THREADPOOL_H

#include <QObject>
#include <QThreadPool>
#include <QRunnable>

// 线程池类，负责管理线程
class ThreadPool : public QObject {
    Q_OBJECT
public:
    // 获取单例实例
    static ThreadPool& instance();
    // 启动一个任务
    void startTask(QRunnable* task);
    // 设置最大线程数
    void setMaxThreadCount(int count);

private:
    // 构造函数，私有化以实现单例模式
    explicit ThreadPool(QObject* parent = nullptr);
    // 析构函数
    ~ThreadPool();

    // Qt的线程池对象
    QThreadPool m_threadPool;
};

#endif // THREADPOOL_H
